package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 书籍基本信息表(BooksInformation)实体类
 *
 * @author 杨丽辉
 * @since 2021-03-10 16:22:33
 */
@ApiModel("书籍基本信息表")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class BooksInformation implements Serializable {
    private static final long serialVersionUID = -98373581049239936L;
        /**
    *主键
    * 书籍id
    * isnull 1
    */
    @ApiModelProperty(value="书籍id",position=1)
    @TableId(type = IdType.ASSIGN_ID)
    private String booksId;

    /**
    * 书籍名称
    * isnull 0
    */        @ApiModelProperty(value="书籍名称",position=2)
    private String bookName;
    /**
    * 书籍状态：0：完结；1：连载；2：新开坑；3：弃坑（一般新插入默认为2）
    * isnull 0
    */        @ApiModelProperty(value="书籍状态：0：完结；1：连载；2：新开坑；3：弃坑（一般新插入默认为2）",position=3)
    private Integer bookStatus;
    /**
    * 书籍简介
    * isnull 0
    */        @ApiModelProperty(value="书籍简介",position=4)
    private String bookInfo;
    /**
    * 书籍开坑时间
    * isnull 0
    */        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        @ApiModelProperty(value="书籍开坑时间",position=5)
    private LocalDateTime bookStartTime;
    /**
    * 书籍信息更新时间
    * isnull 0
    */        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        @ApiModelProperty(value="书籍信息更新时间",position=6)
    private LocalDateTime bookIupdateTime;
    /**
    * 作者id
    * isnull 0
    */        @ApiModelProperty(value="作者id",position=7)
    private String authorId;
    /**
    * 作者昵称
    * isnull 0
    */        @ApiModelProperty(value="作者昵称",position=8)
    private String authorName;
    /**
    * 书籍封面图片链接
    * isnull 0
    */        @ApiModelProperty(value="书籍封面图片链接",position=9)
    private String bookPic;
    /**
    * 书籍一级标签数组（由前端去分割）
    * isnull 0
    */        @ApiModelProperty(value="书籍一级标签数组（由前端去分割）",position=10)
    private String bookOnelabel;
    /**
    * 书籍被收藏数
    * isnull 0
    */        @ApiModelProperty(value="书籍被收藏数",position=11)
    private Integer favoritesCount;
    /**
    * 书籍二级标签数组（由前端去分割）
    * isnull 0
    */        @ApiModelProperty(value="书籍二级标签数组（由前端去分割）",position=12)
    private String bookTwolabel;
    /**
    * 书籍属性（0：原创；1：转载；2：基于原文学作品创作）
    * isnull 0
    */        @ApiModelProperty(value="书籍属性（0：原创；1：转载；2：基于原文学作品创作）",position=13)
    private Integer bookAttributes;
    /**
    * 书籍总字数
    * isnull 0
    */        @ApiModelProperty(value="书籍总字数",position=14)
    private Integer contentCount;
    /**
    * 最新更新的章节名称
    * isnull 0
    */        @ApiModelProperty(value="最新更新的章节名称",position=15)
    private String newChaptername;
    /**
    * 最新章节更新时间
    * isnull 0
    */        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        @ApiModelProperty(value="最新章节更新时间", position=16)
    private LocalDateTime newChapterUtime;
    /**
    * 一句话介绍书籍
    * isnull 0
    */        @ApiModelProperty(value="一句话介绍书籍",position=17)
    private String oneWord;
    /**
    * 评论数
    * isnull 0
    */        @ApiModelProperty(value="评论数",position=18)
    private Integer commentCount;
        
    public String getBooksId() {
        return booksId;
    }

    public void setBooksId(String booksId) {
        this.booksId = booksId;
    }
        
    public String getBookName() {
        return bookName;
    }

    public void setBookName(String bookName) {
        this.bookName = bookName;
    }
        
    public Integer getBookStatus() {
        return bookStatus;
    }

    public void setBookStatus(Integer bookStatus) {
        this.bookStatus = bookStatus;
    }
        
    public String getBookInfo() {
        return bookInfo;
    }

    public void setBookInfo(String bookInfo) {
        this.bookInfo = bookInfo;
    }
        
    public LocalDateTime getBookStartTime() {
        return bookStartTime;
    }

    public void setBookStartTime(LocalDateTime bookStartTime) {
        this.bookStartTime = bookStartTime;
    }
        
    public LocalDateTime getBookIupdateTime() {
        return bookIupdateTime;
    }

    public void setBookIupdateTime(LocalDateTime bookIupdateTime) {
        this.bookIupdateTime = bookIupdateTime;
    }
        
    public String getAuthorId() {
        return authorId;
    }

    public void setAuthorId(String authorId) {
        this.authorId = authorId;
    }
        
    public String getAuthorName() {
        return authorName;
    }

    public void setAuthorName(String authorName) {
        this.authorName = authorName;
    }
        
    public String getBookPic() {
        return bookPic;
    }

    public void setBookPic(String bookPic) {
        this.bookPic = bookPic;
    }
        
    public String getBookOnelabel() {
        return bookOnelabel;
    }

    public void setBookOnelabel(String bookOnelabel) {
        this.bookOnelabel = bookOnelabel;
    }
        
    public Integer getFavoritesCount() {
        return favoritesCount;
    }

    public void setFavoritesCount(Integer favoritesCount) {
        this.favoritesCount = favoritesCount;
    }
        
    public String getBookTwolabel() {
        return bookTwolabel;
    }

    public void setBookTwolabel(String bookTwolabel) {
        this.bookTwolabel = bookTwolabel;
    }
        
    public Integer getBookAttributes() {
        return bookAttributes;
    }

    public void setBookAttributes(Integer bookAttributes) {
        this.bookAttributes = bookAttributes;
    }
        
    public Integer getContentCount() {
        return contentCount;
    }

    public void setContentCount(Integer contentCount) {
        this.contentCount = contentCount;
    }
        
    public String getNewChaptername() {
        return newChaptername;
    }

    public void setNewChaptername(String newChaptername) {
        this.newChaptername = newChaptername;
    }
        
    public LocalDateTime getNewChapterUtime() {
        return newChapterUtime;
    }

    public void setNewChapterUtime(LocalDateTime newChapterUtime) {
        this.newChapterUtime = newChapterUtime;
    }
        
    public String getOneWord() {
        return oneWord;
    }

    public void setOneWord(String oneWord) {
        this.oneWord = oneWord;
    }
        
    public Integer getCommentCount() {
        return commentCount;
    }

    public void setCommentCount(Integer commentCount) {
        this.commentCount = commentCount;
    }

        @Override
    public String toString() {
        return "{" +
                    " \"booksId\":" + booksId +
                                  " ,\"bookName\":" + bookName +
                            " ,\"bookStatus\":" + bookStatus +
                            " ,\"bookInfo\":" + bookInfo +
                            " ,\"bookStartTime\":" + bookStartTime +
                            " ,\"bookIupdateTime\":" + bookIupdateTime +
                            " ,\"authorId\":" + authorId +
                            " ,\"authorName\":" + authorName +
                            " ,\"bookPic\":" + bookPic +
                            " ,\"bookOnelabel\":" + bookOnelabel +
                            " ,\"favoritesCount\":" + favoritesCount +
                            " ,\"bookTwolabel\":" + bookTwolabel +
                            " ,\"bookAttributes\":" + bookAttributes +
                            " ,\"contentCount\":" + contentCount +
                            " ,\"newChaptername\":" + newChaptername +
                            " ,\"newChapterUtime\":" + newChapterUtime +
                            " ,\"oneWord\":" + oneWord +
                            " ,\"commentCount\":" + commentCount +
                  '}';
    }


}
